Users switch contexts frequently when working. This can be due to interruptions, and the need to put aside the work being performed for a particular task in order to switch to another task. Upon returning to the original task, users can have a problem recalling all of the items upon which they were working (e.g., files, applications, locations, people, communications, etc.) in order to resume the original task.
Problems related to context switching can be alleviated if users rigorously kept records of everything and everyone involved in a particular work context. However, it can be just as much work creating a complete record of all the items used in a particular work context than performing the actual work itself. Additionally, certain items cannot be easily recorded. For example, it can be difficult to save or reference an email message, an instant message conversation, or an application that does not produce a file, such as a calculator.
In practice, users typically rely on memory recall to relocate and rebuild work contexts. However, this can be a time-consuming and error-prone strategy. Users can also rely on traditional search engines that accept keyword queries for locating relevant web pages and other items. With a search engine, a specific phrase or parameter is entered in order to locate relevant items. While search engines produce results, the engines oftentimes produce a great number of irrelevant results, and therefore, are not helpful in recalling a specific set of items related to a particular task.
Additionally, keyword search results merely present a list of items containing relevant terms. Even if a target list of relevant results is obtained from a keyword search, a search can typically only retrieve documents, not application states. It can be time-consuming to perform searches, with little assurance that a precise list of previous work context items can be reconstructed.